Optimize performance and refactor font handling in editor#288
Merged
Conversation
패턴 히스토리 저장/복원, 복사/붙여넣기, 리트라이 등 딥 클론이 필요한 모든 위치에서 eval 및 JSON 직렬화 방식을 structuredClone()으로 교체. 붙여넣기 함수의 beat 뮤테이션 버그(복사 원본이 변경되던 문제)도 함께 수정. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
매 프레임 new Set(existingSet)으로 이전 프레임 데이터를 복사하는 대신 두 Set을 스왑하고 clear()하는 방식으로 변경하여 GC 압력 감소. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
새로 생성한 객체를 배열에 push한 직후 해당 객체를 찾는 루프에서 JSON.stringify 직렬화 비교 대신 참조 동등성(===)을 사용하도록 변경. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
FONT_STACK 상수로 긴 폰트 패밀리 문자열을 중복 없이 관리하고, canvasH 기반 고정 폰트는 initialize() 호출 시 UIFontNormal/cachedFontItalic에 캐싱하여 매 프레임 문자열 생성을 제거. 동적 combo 폰트(fontSize가 매 프레임 변경)는 FONT_STACK 상수를 사용하는 템플릿 리터럴로 유지. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
:root에 --font-stack-base, --font-montserrat, --font-metropolis 변수를 정의하고 각 선택자에서 반복되던 긴 폰트 패밀리 목록을 var()로 교체. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@Keyframes pace-spinner의 -moz-, -o-, -ms- 블록과 animation 벤더 프리픽스 제거. 표준 @Keyframes의 중복 transform 선언 제거. 2D 캔버스 요소(#componentCanvas)의 효과 없는 will-change: transform 제거. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
같은 페이지에 id="gotoGame"이 두 번 사용되어 유효하지 않은 HTML이었던 문제 수정. songSelectionContainer 내 요소의 id를 gotoMain으로 변경하고 CSS 선택자에 추가. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…체 재사용 (updater.js) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…r.js) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…eSelection beats 파라미터화 (play, test, tutorial) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.